import { createApp } from 'vue';
// 导入element plus
import ElementPlus from 'element-plus';
import 'element-plus/dist/index.css';
import zhCn from 'element-plus/es/locale/lang/zh-cn';
import * as Icons from '@element-plus/icons-vue'; // 导入element plus图标
import router from './router';
import store from './store';
import App from './App.vue';
import urls from './api/request/urls';
// import dict from './api/dict'; // 自带字段，后面改为按需导入。
import Request from './api/request/request';

const app = createApp(App)
  .use(store)
  .use(router)
  .use(ElementPlus, {
    locale: zhCn,
  });
// 将element plus的icon图表进行注册
Object.keys(Icons).forEach((key) => {
  // key为图片名称
  // typeof Icons会返回object类型
  // keyof typeof Icons表示获取Icons中的所有属性名
  // key as keyof typeof Icons表示断言key的名称属于Icons的所有属性名之一，类似于强制转换的的意思，如java中的String a=(String)b;
  app.component(key, Icons[key]); // typeof Icons
});
// 挂载变量
app.config.globalProperties.$urls = urls; // 接口地址
// app.config.globalProperties.$dict=dict;//字典
app.config.globalProperties.$Request = Request; // request请求封装
// element 全局默认大小为small
// app.config.globalProperties.$ELEMENT = {
//   size: 'small',
// }
app.mount('#app');
// # sourceMappingURL=main.js.map
